/*
	@file: log/include/LoggerCreator.h
	@author: author
 */
#ifndef _LOG_LOGGER_CREATOR_H_
#define _LOG_LOGGER_CREATOR_H_

#include <boost/shared_ptr.hpp>
#include <boost/property_tree/ptree.hpp>
#include "../logger/Logger.h"

namespace logger
{

class LoggerCreator;
typedef boost::shared_ptr<LoggerCreator> LoggerCreatorPtr;

class LoggerCreator
{
public:
	virtual ~LoggerCreator()
	{

	}

	virtual LoggerPtr create_logger(
		boost::property_tree::ptree& setting) = 0;
};

}// namespace logger

#endif // #ifndef _LOG_LOGGER_CREATOR_H_
